home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 24 / Amiga Format AFCD24 (Feb 1998, Issue 108).iso / -in_the_mag- / emulation / amiga / uae-0.7.0b2 / src / od-amiga / amiga-kludges.h < prev    next >
C/C++ Source or Header  |  1998-01-20  |  4KB  |  145 lines

  1. /* 
  2.  * sam: GCC has a bad feature ("bug" would a better word) for uae in 
  3.  * libamiga.a: bltsize, bltcon0, ... are defined as absolute address
  4.  * in memory, causing real customchip registers being modified when
  5.  * UAE is running. (I hate this feature... It makes  me lost lots of 
  6.  * time looking for a bug on my side =:-( ).
  7.  *
  8.  * This cures the problem (I hope, since I don't exactly know which 
  9.  * variables need to be redefined for UAE):
  10.  */
  11. /* 0.6.1 */
  12. #define bltsize my_bltsize
  13. #define bltcon0 my_bltcon0
  14. #define bltcon1 my_bltcon1
  15. #define bltapt  my_bltapt
  16. #define bltbpt  my_bltbpt
  17. #define bltcpt  my_bltcpt
  18. #define bltdpt  my_bltdpt
  19. #define adkcon  my_adkcon
  20. /* 0.6.3 */
  21. #define serdat  my_serdat
  22. #define dmacon  my_dmacon
  23. #define intena  my_intena
  24. #define intreq  my_intreq
  25.  
  26. #ifdef __SASC
  27. #define fmode   my_fmode
  28. #endif
  29.  
  30. #define AMIGALIB_NEED_TO_BE_REALLY_SURE
  31. /*
  32.  * Those are here is case of doubt (they are all absolute address
  33.  * in libamiga.a, defining CUSTOM_NEED_TO_BE_REALLY_SURE will prevent
  34.  * uae from using any absolute variable.
  35.  */
  36. #ifdef AMIGALIB_NEED_TO_BE_REALLY_SURE 
  37. #define bootrom my_bootrom
  38. #define cartridge my_cartridge
  39. #define romend my_romend
  40. #define romstart my_romstart
  41. #define adkcon my_adkcon
  42. #define adkconr my_adkconr
  43. #define aud my_aud
  44. #define bltadat my_bltadat
  45. #define bltafwm my_bltafwm
  46. #define bltalwm my_bltalwm
  47. #define bltamod my_bltamod
  48. #define bltapt my_bltapt
  49. #define bltbdat my_bltbdat
  50. #define bltbmod my_bltbmod
  51. #define bltbpt my_bltbpt
  52. #define bltcdat my_bltcdat
  53. #define bltcmod my_bltcmod
  54. #define bltcon0 my_bltcon0
  55. #define bltcon1 my_bltcon1
  56. #define bltcpt my_bltcpt
  57. #define bltddat my_bltddat
  58. #define bltdmod my_bltdmod
  59. #define bltdpt my_bltdpt
  60. #define bltsize my_bltsize
  61. #define bpl1mod my_bpl1mod
  62. #define bpl2mod my_bpl2mod
  63. #define bplcon0 my_bplcon0
  64. #define bplcon1 my_bplcon1
  65. #define bplcon2 my_bplcon2
  66. #define bpldat my_bpldat
  67. #define bplpt my_bplpt
  68. #define clxcon my_clxcon
  69. #define clxdat my_clxdat
  70. /* Oh look ! libamiga.a does not allow you to define a shared
  71.    variable caled color.... This is quite annoying :-/ */
  72. #define color my_color
  73. #define cop1lc my_cop1lc
  74. #define cop2lc my_cop2lc
  75. #define copcon my_copcon
  76. #define copins my_copins
  77. #define copjmp1 my_copjmp1
  78. #define copjmp2 my_copjmp2
  79. #define custom my_custom
  80. #define ddfstop my_ddfstop
  81. #define ddfstrt my_ddfstrt
  82. #define diwstop my_diwstop
  83. #define diwstrt my_diwstrt
  84. #define dmacon my_dmacon
  85. #define dmaconr my_dmaconr
  86. #define dskbytr my_dskbytr
  87. #define dskdat my_dskdat
  88. #define dskdatr my_dskdatr
  89. #define dsklen my_dsklen
  90. #define dskpt my_dskpt
  91. #define intena my_intena
  92. #define intenar my_intenar
  93. #define intreq my_intreq
  94. #define intreqr my_intreqr
  95. #define joy0dat my_joy0dat
  96. #define joy1dat my_joy1dat
  97. #define joytest my_joytest
  98. #define pot0dat my_pot0dat
  99. #define pot1dat my_pot1dat
  100. #define potgo my_potgo
  101. #define potinp my_potinp
  102. #define refptr my_refptr
  103. #define serdat my_serdat
  104. #define serdatr my_serdatr
  105. #define serper my_serper
  106. #define spr my_spr
  107. #define sprpt my_sprpt
  108. #define vhposr my_vhposr
  109. #define vhposw my_vhposw
  110. #define vposr my_vposr
  111. #define vposw my_vposw
  112. #define ciaa my_ciaa
  113. #define ciaacra my_ciaacra
  114. #define ciaacrb my_ciaacrb
  115. #define ciaaddra my_ciaaddra
  116. #define ciaaddrb my_ciaaddrb
  117. #define ciaaicr my_ciaaicr
  118. #define ciaapra my_ciaapra
  119. #define ciaaprb my_ciaaprb
  120. #define ciaasdr my_ciaasdr
  121. #define ciaatahi my_ciaatahi
  122. #define ciaatalo my_ciaatalo
  123. #define ciaatbhi my_ciaatbhi
  124. #define ciaatblo my_ciaatblo
  125. #define ciaatodhi my_ciaatodhi
  126. #define ciaatodlow my_ciaatodlow
  127. #define ciaatodmid my_ciaatodmid
  128. #define ciab my_ciab
  129. #define ciabcra my_ciabcra
  130. #define ciabcrb my_ciabcrb
  131. #define ciabddra my_ciabddra
  132. #define ciabddrb my_ciabddrb
  133. #define ciabicr my_ciabicr
  134. #define ciabpra my_ciabpra
  135. #define ciabprb my_ciabprb
  136. #define ciabsdr my_ciabsdr
  137. #define ciabtahi my_ciabtahi
  138. #define ciabtalo my_ciabtalo
  139. #define ciabtbhi my_ciabtbhi
  140. #define ciabtblo my_ciabtblo
  141. #define ciabtodhi my_ciabtodhi
  142. #define ciabtodlow my_ciabtodlow
  143. #define ciabtodmid my_ciabtodmid
  144. #endif /* AMIGALIB_NEED_TO_BE_REALLY_SURE */
  145.